<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets">  

    <ui:composition template="templatePadrao.xhtml">                 
                
            <ui:define name="top">       
                <ui:include src="menu.xhtml" />
            </ui:define>             
        
            <ui:define name="content"> 

            <h:form id="formMessages">
                <p:growl id="messages" widgetVar="messages" showDetail="true" life="5000" sticky="false" autoUpdate="true" />                  
            </h:form>
                
            <h:form id="principal" prependId="false">
                
                <p:contextMenu for="predios">                      
                     <p:menuitem value="Deletar" update="predios" icon="ui-icon-close" onclick="confirmation.show();"/>  
                     <p:menuitem value="Editar"  update="principal" icon="ui-icon-arrowrefresh-1-w" actionListener="#{PredioController.preparaEdicao()}"/>
                </p:contextMenu>                
                
                <p:fieldset legend="Prédio">
                    <p:panelGrid id="padrao" columns="3" style="width: 100%;" styleClass="usuarioGrid">
                        
                           <p:selectOneMenu label="Unidades" id="selectUnidade" value="#{PredioController.selectedUnidade}">                                  
                               <f:selectItems value="#{PredioController.carregarUnidades}" />
                           </p:selectOneMenu>                           
                        
                           <p:outputLabel>Nome *</p:outputLabel>
                           <p:inputText id="nm_predio" size="50" maxlength="50" value="#{PredioController.predio.nome}" title="Informe o nome" />                                                
                        
                    </p:panelGrid>
                    
                    <p:commandButton value="Salvar" update="principal" actionListener="#{PredioController.preparaInclusao()}"/>
                    <p:commandButton value="Cancelar" process="@form" update="principal" actionListener="#{PredioController.resetPredio()}"/>                    
                    
                </p:fieldset>
                
                <p:dataTable id="predios" var="predio" emptyMessage="Não existem predios cadastrados"
                             value="#{PredioController.lista}" rowKey="#{predio.id}"
                             selectionMode="single" selection="#{PredioController.predioSelecionado}"
                             paginator="true" rows="10">
                   
                   <p:column>   
                        <f:facet name="header">  
                                <h:outputText value="Cód Prédio" />  
                        </f:facet>  
                            <h:outputText value="#{predio.id}"/>
                    </p:column>  
                    
                   <p:column>   
                        <f:facet name="header">  
                                <h:outputText value="Unidade" />  
                        </f:facet>  
                            <h:outputText value="#{predio.unidade.nome}"/>
                    </p:column>                     
                    
                    <p:column>   
                        <f:facet name="header">  
                                <h:outputText value="Nome" />  
                        </f:facet>  
                            <h:outputText value="#{predio.nome}"/>
                    </p:column>      
                    
                  
               </p:dataTable> 
                
               <p:commandButton value="Deletar" id="deletarDisciplina" update="principal" onclick="confirmation.show();"/>
               <p:commandButton value="Editar"  id="editarDisciplina" update="principal" actionListener="#{PredioController.preparaEdicao()}"/>                
                
            </h:form>
                
        <!-- Abaixo temos um modal de confirmação de exclusão repare que ele é fora do form principal, pois se colocarmos dentro podemos ter alguns problemas com isso.-->
        <h:form id="dlg" prependId="false">
            <p:confirmDialog message="Deseja realmente excluir este registro?" header="Aviso" severity="alert" widgetVar="confirmation" >
                <!--caso seja sim chamo o metodo excluir, e fecho o modal com o oncomplete, tenho o process que estou dizendo para processar o form, e update para atualizar a tabela-->
                <p:commandButton id="btnSim" value="Sim" oncomplete="confirmation.hide();" actionListener="#{PredioController.deletaPredio()}" process="@form" update=":principal" />
                <!--caso seja não somente fecha o modal-->
                <p:commandButton id="btnNao" value="Não" onclick="confirmation.hide();" type="button"/>
            </p:confirmDialog>                    
            
        </h:form>                 
                
            </ui:define>
    </ui:composition>
    
</html>
